package org.linlinjava.litemall.wx.vo.order;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.linlinjava.litemall.db.domain.LitemallShop;
import org.linlinjava.litemall.db.dto.WxMemberSourceDTO;
import org.linlinjava.litemall.db.util.OrderHandleOption;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;


@Data
@ApiModel(value="订单")
public class OrderListRespVO {

    @ApiModelProperty(value = "订单id")
    private Integer id;
    @ApiModelProperty(value = "订单号")
    private String orderSn;
    @ApiModelProperty(value = "订单实际金额")
    private BigDecimal actualPrice;
    @ApiModelProperty(value = "订单类型（1：自提订单;2:外送订单）")
    private String  orderStatusText;

    @ApiModelProperty(value = "订单税费")
    private BigDecimal taxPrice;
    @ApiModelProperty(value = "订单状态")
    private Short orderStatus;
    @ApiModelProperty(value = "订单制作状态")
    private Byte madeStatus;
    @ApiModelProperty(value = "订单类型（1：自提订单;2:外送订单）")
    private OrderHandleOption handleOption;
    @ApiModelProperty(value = "订单店铺")
    private LitemallShop shop;
    @ApiModelProperty(value = "订单备注")
    private String message;
    @ApiModelProperty(value = "订单类型（1：自提订单;2:外送订单）")
    private Byte orderType;
    @ApiModelProperty(value = "订单运费")
    private BigDecimal freightPrice;
    @ApiModelProperty(value = "收货人")
    private String consignee;
    @ApiModelProperty(value = "订单收货电话")
    private String mobile;
    @ApiModelProperty(value = "订单收货地址")
    private String address;
    @ApiModelProperty(value = "订单积分")
    private BigDecimal point;
    @ApiModelProperty(value = "订单支付类型")
    private Byte payType;

    @ApiModelProperty(value = "订单时间")
    private LocalDateTime addTime;

    @ApiModelProperty(value = "商品总价格")
    private BigDecimal goodsPrice;


    //税率代码(GST、PST、HST) 税收值 合计
    @ApiModelProperty(value = "GST 订单税费总金额")
    private BigDecimal GSTPrice;
    @ApiModelProperty(value = "PST 订单税费总金额")
    private BigDecimal HSTPrice;
    @ApiModelProperty(value = "HST 订单税费总金额")
    private BigDecimal PSTPrice;

    private BigDecimal memberPer;

    @ApiModelProperty(value = "HST 订单税费总金额")
    private BigDecimal memberPrice;

    @ApiModelProperty(value = "HST 订单税费总金额")
    private BigDecimal couponPrice;

    private List<WxMemberSourceDTO> wxMemberSource;

    @ApiModelProperty(value = "订单商品")
    private List<OrderGoodsRespVO> goodsList;
    @ApiModelProperty(value = "订单套餐")
    private List<OrderPackageRespVO> packageList;


}
